/*******************************************************************************
  * 文件：Hardware_ADC.c
  * 作者：zyz
  * 版本：v1.0.0
  * 日期：2017-08-03
  * 说明：ADC相关
*******************************************************************************/

/* 头文件 *********************************************************************/
#include "Hardware_ADC.h"
#include "r_cg_adc.h"

/* 宏定义 *********************************************************************/
/* 类型定义 *******************************************************************/
/* 变量定义 *******************************************************************/
/* 函数声明 *******************************************************************/
/* 函数定义 *******************************************************************/

/*******************************************************************************
  * 函数名：Hardware_InitADC
  * 功  能：初始化
  * 参  数：无
  * 返回值：无
  * 说  明：无
*******************************************************************************/
void Hardware_InitADC(void)
{
  
}

/*******************************************************************************
  * 函数名：Hardware_GetADCResult
  * 功  能：获取转换结果
  * 参  数：ad_channel_t eChn:通道值，本工程使用 0-5通道，其他未使用
  * 返回值：转换结果
  * 说  明：采集十次，去掉最大最小值，取平均。
*******************************************************************************/
U16 Hardware_GetADCResult(U8 u8Chn)
{
    return R_ADC_GetAverageValue((ad_channel_t)u8Chn);
}

/*******************************************************************************
  * 函数名：Hardware_GetMotorBlock
  * 功  能：获取电机堵转电压
  * 参  数：无
  * 返回值：电机驱动芯片反馈电压
  * 说  明：等效采样电阻为0.11Ω。堵转保护电流为2.2A，保护电压为0.11*2.2=0.242V
*******************************************************************************/
U16 Hardware_GetMotorBlock(void)
{
	return Hardware_GetADCResult(ADCHANNEL0);
}
	
/*******************************************************************************
  * 函数名：Hardware_GetCavityNTC
  * 功  能：获取箱体NTC的ADC值
  * 参  数：无
  * 返回值：箱体NTC的ADC值
  * 说  明：无
*******************************************************************************/
U16 Hardware_GetCavityNTC(void)
{
  	return Hardware_GetADCResult(ADCHANNEL1);
}

/*******************************************************************************
  * 函数名：Hardware_GetPowerBoardNTC
  * 功  能：获取电源板NTC的ADC值
  * 参  数：无
  * 返回值：电源板NTC的ADC值
  * 说  明：无
*******************************************************************************/
U16 Hardware_GetPowerBoardNTC(void)
{
	return Hardware_GetADCResult(ADCHANNEL2);  
}

/*******************************************************************************
  * 函数名：Hardware_GetSteamPanNTC
  * 功  能：获取蒸发盘NTC的ADC
  * 参  数：无
  * 返回值：蒸发盘NTC的ADC
  * 说  明：无
*******************************************************************************/
U16 Hardware_GetSteamPanNTC(void)
{
	return Hardware_GetADCResult(ADCHANNEL3);  
}

/*******************************************************************************
  * 函数名：Hardware_GetProbeNTC
  * 功  能：获取肉感探针NTC的ADC
  * 参  数：无
  * 返回值：肉感探针NTC的ADC
  * 说  明：无
*******************************************************************************/
U16 Hardware_GetProbeNTC(void)
{
	return Hardware_GetADCResult(ADCHANNEL4);  
}

/*******************************************************************************
  * 函数名：Hardware_GetBottomNTC
  * 功  能：获取底部NTC的ADC值
  * 参  数：无
  * 返回值：底部NTC的ADC值
  * 说  明：无
*******************************************************************************/
U16 Hardware_GetBottomNTC(void)
{
	return Hardware_GetADCResult(ADCHANNEL5);  
}
/***************************** 文件结束 ***************************************/
